import store from '../store/index.js'
console.log('load SCRIPT');
const nuA = navigator.userAgent.toLowerCase();

// 本页面也要引入sdk
let script = document.createElement('script');
script.type = 'text/javascript';
script.src = 'https://res.wx.qq.com/open/js/jweixin-1.2.0.js';
document.body.appendChild(script);
let commonWx = null;
if (!nuA.includes('micromessenger')) {
	console.log('非微信环境');
} else {
	// 安卓wx jWeixin都存在，ios下jWeixin不存在...所以会影响到后面
	// 需要处理成同一个对象
	// 可以先指定commonWx为jWeixin
	setTimeout(() => {
		try {
			commonWx = jWeixin;
		} catch (e) {}
		if (nuA.includes('iphone')) {
			commonWx = wx;
		}
	}, 500);
}

export default {
	initJssdk: function(callback) {
		//获取当前url然后传递给后台获取授权和签名信息
		var cUrl = window.location.href.split('#')[0];
		uni.request({
			// 按企业微信官方文档要求，要传当前网页的URL， 不包含#及其后面部分 给后端处理
			url: 'https://scrm.zuixiyu.com/auth/wxLogin',
			data: {
				url: window.location.href // 例如 http://www.xxx.com/test/interface
			},
			method: 'get', // GET或者POST最常用
			header: {
				// 你的请求必带的头字段，一般是token什么的，登录时一般存store
				// 'xxx': store.xxx
			},
			success: (res) => {
				console.log("===",res);
				//注入config权限配置
				commonWx.config({
					beta: true,
					debug: false,
					appId: res.data.appId,
					timestamp: parseInt(res.xxx.timestamp),
					nonceStr: res.data.nonceStr,
					signature: res.data.signature,
					// 这里是需要用到的特殊api名称
					jsApiList: [
						'onHistoryBack' // 控制返回
					]
				});
				if (callback) {
					callback();
				}
			}
		})
	},

	// 封装微信JSSDK方法
	// return true放行，反之不执行
	onHistoryBack(fn) {
		this.initJssdk();
		commonWx.ready(() => {
			commonWx.onHistoryBack(() => {
				fn();
				return false;
			})
		});
		commonWx.error(res => {
			console.log("config fail:", res);
		});
	},
}